home *** CD-ROM | disk | FTP | other *** search
- /* viewexec.c file - executes one input command */
- #include "stdio.h"
- #include "viewcmds.h"
- #include "viewparm.h"
- extern long filesize ; /* position of effective eof */
-
- int exec_cmd(cmd) /* execute input command */
- int cmd ; /* value of command to execute */
- {
- long new_pos , get_pos() ;
-
- switch( cmd )
- { case PREVPAGE : /* move backward to last page */
- move_backward(PAGE_SIZE - LINES_OVERLAP) ;
- display_page() ;
- break ;
- case NEXTPAGE : /* moves forward to next page */
- move_forward(PAGE_SIZE - LINES_OVERLAP) ;
- display_page() ;
- break ;
- case EXITPGM :
- break ;
- case MOVETOPOS :
- new_pos = get_pos() ; /* get new file position */
- move_to(new_pos) ; /* move to specified position */
- set_top_page() ; /* make it top_of_page for now */
- move_backward(0) ; /* move to start of this line */
- display_page() ;
- break ;
- case FIRSTPAGE :
- move_to(0L) ; /* move to begining of file */
- set_top_page() ; /* make it the top of the page */
- display_page() ;
- break ;
- case LASTPAGE :
- move_to(filesize) ; /* move to end of file */
- set_top_page() ; /* make it the top of page */
- move_backward(PAGE_SIZE); /* put eof at bottom */
- display_page() ;
- break ;
- case PREVLINE :
- move_backward(1) ; /* move back one line */
- display_page() ;
- break ;
- case NEXTLINE :
- move_forward(1) ; /* move forward one line */
- display_page() ;
- break ;
- }
- }
-
-